home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / suplib / enqueue.c < prev    next >
C/C++ Source or Header  |  1992-10-25  |  445b  |  24 lines

  1.  
  2. #include <stdio.h>
  3. #include <suplib/lists.h>
  4.  
  5. void
  6. Enqueue(struct List *list, struct Node *node)
  7. {
  8.     struct Node *scan;
  9.  
  10.     for (scan = list->lh_Head; scan->ln_Succ; scan = scan->ln_Succ) {
  11.     if (node->ln_Pri > scan->ln_Pri)
  12.         break;
  13.     }
  14.     /*
  15.      *  Insert before scan.  scan might point to &lh_Tail
  16.      */
  17.  
  18.     node->ln_Succ = scan;
  19.     node->ln_Pred = scan->ln_Pred;
  20.     scan->ln_Pred = node;
  21.     node->ln_Pred->ln_Succ = node;
  22. }
  23.  
  24.